package controlador;

import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;

import modelo.TanqueAlgo;
import titiritero.KeyPressedObservador;
import utilitarios.*;

/**
 * Clase que administra los controles del jugador
 * y los trauduce en movimientos reales
 *
 */
public class ControladorAlgoTank implements KeyPressedObservador, KeyListener {
	
	private TanqueAlgo jugador;

	public ControladorAlgoTank(TanqueAlgo jugador) {
		this.jugador = jugador;
	}

	@Override
	public void keyPressed(KeyEvent event) {
		int tecla = event.getKeyCode();
		if (tecla == KeyEvent.VK_UP)
			this.jugador.seMovera(new DireccionAbajo());
		else if (tecla == KeyEvent.VK_DOWN)
			this.jugador.seMovera(new DireccionArriba());
		else if (tecla == KeyEvent.VK_RIGHT)
			this.jugador.seMovera(new DireccionDerecha());
		else if (tecla == KeyEvent.VK_LEFT)
			this.jugador.seMovera(new DireccionIzquierda());
		if (tecla == KeyEvent.VK_SPACE)
			this.jugador.disparar();
	}

	@Override
	public void keyReleased(KeyEvent e) {
		this.jugador.detener();
	}

	@Override
	public void keyTyped(KeyEvent e) {
	}

}
